package com.topscomm.base;

import com.topscomm.meet.pojo.MeetRoomApplyEntity;

import java.util.Collections;
import java.util.HashMap;
import java.util.Map;

public class BaseRemindTemplate {
	/**
	 * @description: App提醒模板
	 * @author: maxiaodong
	 * @date: 2020年11月12日下午3:23:34
	 * @modify:
	 */
	public static class AppRemindTemplate {
		public static final String AppInnerSubjectTemplate = "新的工作日程提醒";// app消息弹窗模板的主题
		public static final String AppInnerRemindTemplate1 = "您在%s有如下安排：\n【%s】\n来自：%s";// app消息弹窗模板，提醒时间、提醒内容、来自部门与人员
		public static final String AppInnerRemindTemplate2 = "您在%s有如下安排：\n【%s】，地点：%s。\n来自：%s";
		public static final String AppMeetSubmitSubjectTemplate = "会议确认提醒";// 会议app消息弹窗模板的主题
		/**
		 * 主题提醒方式
		 */
		public static final String NewSubjectTemplate = "新的工作日程提醒";
		public static final String NewContentTemplate1 = "您在%s有如下安排：\n【%s】\n来自：%s";
		public static final String NewContentTemplate2 = "您在%s有如下安排：\n【%s】，地点：%s。\n来自：%s";
		public static final String EditSubjectTemplate = "工作日程修改提醒";
		public static final String EditContentTemplate1 = "您在%s的日程：\n【%s】已被修改，请查看日程最新安排。\n来自：%s";
		public static final String DelSubjectTemplate = "工作日程撤销提醒";
		public static final String DelContentTemplate1 = "您在%s的日程：\n【%s】已被撤销。\n来自：%s";
		public static final String DelContentTemplate2 = "您在%s的日程：\n【%s】，地点：%s，已被撤销。\n来自：%s";
		/**
		 * 会议室额外通知
		 */
		public static final String ExtraContentTemplate = "您有如下安排：\n%s有会议室预约，请提前做好会前准备\n地点：%s\n来自：%s";
		/**
		 * 模板map，通过日程TemplateType查找对应模板
		 */
		public static final Map<String, String> TemplateMap;
		/**
		 * 初始化只读模板map
		 */
		static {
			HashMap<String, String> tempMap = new HashMap<>();
			tempMap.put("ExtraContentTemplate", ExtraContentTemplate);
			TemplateMap = Collections.unmodifiableMap(tempMap);
		}
		/**
		 * 提醒上传会议纪要模板
		 */
		public static final String RemindUploadRecordSubjectTemplate = "会议纪要上传提醒";
		public static final String RemindUploadRecordContentTemplate1 = "您负责的：%s\n请及时上传会议纪要";
		public static final String RemindUploadRecordContentTemplate2 = "您在%s发起的：\n%s\n请及时上传会议纪要";
		/**
		 * 会议纪要上传更新提醒模板
		 */
		public static final String UploadRecordSubjectTemplate = "会议纪要已上传";
		public static final String UploadRecordContentTemplate = "会议：%s\n会议纪要已上传\n来自：%s";
		/**
		 * 周期会议确认模板
		 */
		public static final String RemindPeroidMeetContentTemplate = "您预计将于%s组织召开：\n%s\n若要变更或废除请在电脑端进行相关操作\n路径：会议系统-会议管理-会议创建";
		/**
		 * 周期会议会议室时间冲突提醒主题模板
		 */
		public static final String RemindChangePeroidMeetRoomSubjectTemplate = "会议室冲突提醒";
		/**
		 * 周期会议会议室时间冲突提醒内容模板
		 */
		public static final String RemindChangePeroidMeetRoomContentTemplate = "您创建的周期会议：\n%s\n会议室已经被占用，请在电脑端进行变更会议室或会议时间等操作，并及时发布\n路径：会议系统-会议管理-会议创建";
		/**
		 * 会议室申请为报告厅时，会议要求已被确认主题模板
		 */
		public static final String RemindMeetingConfirmedSubjectTemplate = "会议要求已被确认";
		/**
		 * 会议室申请为报告厅时，会议要求已被确认内容模板
		 */
		public static final String RemindMeetingConfirmedContentTemplate = "会议：\n%s\n%s会议室申请要求已被%s确认";
		/**
		 * 会议室申请审批提醒消息模板
		 */
		public static final String RemindApplyRoomSubjectTemplate = "会议室审批提醒";
		public static final String RemindApplyRoomContentTemplate = "您有新的会议室申请需要办理";
		/**
		 * 会议室三十分钟内碰撞提醒
		 */
		public static final String MeetRoomCollisionMessageTemplate  = "您预约会议室的起止时间与他人预约会议的起止时间间隔≤30min，\n可能会因会议延长导致冲突，请确认是否继续预约";
	}
	public static class JoinConfirmRemindTemplate {
		public static final String feedbacktitle = "新的参会反馈提醒";
		public static final String feedbackRefuseContent = "{0}/{1}[{2}]反馈，于{3}举行的会议【{4}】无法参加。\n情况说明：{5}\n{6}";
		public static final String feedbackJoinContent = "{0}/{1}[{2}]反馈，于{3}举行的会议【{4}】现已可以参加。";
	}
	/**
	  *
	  * @author xinfushuo
	  * @param
	  * @throws
	  * @return
	  * @date 2023/4/1
	  * @modify
	  */
	public static class MeetRoomApplyTemplate {
		public static final String RemoteMeetSourceType = MeetRoomApplyEntity.tableName+"_Host";

		public static final String RemoteMeetSubject = "线上会议室申请成功通知";
		public static final String RemoteMeetContent ="您于{0}举行的会议【{1}】，已成功申请线上会议室。\n腾讯会议号：{2}\n主持人密钥：{3}";
	}
}
